/*
 * Copyright (c) 2025 Industrial Software Feature Database
 */
package com.comac.ins.isfd.domain;

import com.anwen.mongo.annotation.ID;
import com.anwen.mongo.annotation.collection.CollectionField;
import com.anwen.mongo.annotation.collection.CollectionName;
import com.anwen.mongo.enums.FieldFill;
import com.comac.ins.isfd.domain.bo.IsfdAnalysisParameterConfigBo;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

/**
 * 算法层级别的配置参数集合
 *
 * @author hxloongs
 * @date 2024-7-9
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
@AutoMapper(target = IsfdAnalysisParameterConfigBo.class)
@CollectionName(value = "analysis_parameter_config")
public class IsfdAnalysisParameterConfig {

    @ID
    private String _id;

    @CollectionField("analysis_ref_id")
    private String analysisRefId;

    @CollectionField("field_id")
    private String fieldId;

    @CollectionField("field_source")
    private String fieldSource;

    @CollectionField("label")
    private String label;

    @CollectionField("operator_ref_id")
    private String operatorRefId;

    @CollectionField("path")
    private String path;

    @CollectionField("related_field_id")
    private String relatedFieldId;

    @CollectionField(value = "related_operator_ref_id")
    private String relatedOperatorRefId;

    @CollectionField("operator_name")
    private String operatorName;

    @CollectionField("analysis_type")
    private String analysisType;

    @CollectionField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;
    /**
     * 元数据管理id
     */
    @CollectionField("metadata_management_id")
    private String metadataManagementId;
}
